package com.ruoyi.examination.domain;

import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.ArrayList;
import java.util.List;

/**
 * 项目管理对象 projects
 * 
 * @author hcc
 * @date 2025-09-16
 */
public class Projects extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 培训项目id */
    private String projectId;

    /** 父id */
    @Excel(name = "父id")
    private String pId;

    /** 祖级列表 */
    private String ancestors;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String projectName;

    /** 项目编号 */
    @Excel(name = "项目编号")
    private String projectNum;

    /** 项目说明 */
    @Excel(name = "项目说明")
    private String projectText;

    /** 排序 */
    @Excel(name = "排序")
    private String sort;

    /** 项目状态 */
    @Excel(name = "项目状态")
    private String projectStatus;

    private String classProjectName; // 班级项目名称

    private String isOperational; // 是否是经营性项目

    private String submitStatus; // 是否在融合平台提交

    private String projectSum; // 项目金额

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** $column.columnComment */
    private String exampleOne;

    /** $column.columnComment */
    private String exampleTwo;

    /** $column.columnComment */
    private String exampleThree;

    /** 父部门名称 */
    private String parentName;

    /** 子部门 */
    private List<Projects> children = new ArrayList<Projects>();
    public String getAncestors()
    {
        return ancestors;
    }

    public void setAncestors(String ancestors)
    {
        this.ancestors = ancestors;
    }
    public String getParentName()
    {
        return parentName;
    }

    public void setParentName(String parentName)
    {
        this.parentName = parentName;
    }

    public void setProjectId(String projectId) 
    {
        this.projectId = projectId;
    }

    public String getProjectId() 
    {
        return projectId;
    }

    public void setpId(String pId) 
    {
        this.pId = pId;
    }

    public String getpId()
    {
        return pId;
    }

    public void setProjectName(String projectName) 
    {
        this.projectName = projectName;
    }

    public String getProjectName() 
    {
        return projectName;
    }

    public void setProjectNum(String projectNum) 
    {
        this.projectNum = projectNum;
    }

    public String getProjectNum() 
    {
        return projectNum;
    }

    public void setProjectText(String projectText) 
    {
        this.projectText = projectText;
    }

    public String getProjectText() 
    {
        return projectText;
    }

    public void setSort(String sort) 
    {
        this.sort = sort;
    }

    public String getSort() 
    {
        return sort;
    }

    public void setProjectStatus(String projectStatus) 
    {
        this.projectStatus = projectStatus;
    }

    public String getProjectStatus() 
    {
        return projectStatus;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public void setExampleOne(String exampleOne) 
    {
        this.exampleOne = exampleOne;
    }

    public String getExampleOne() 
    {
        return exampleOne;
    }

    public void setExampleTwo(String exampleTwo) 
    {
        this.exampleTwo = exampleTwo;
    }

    public String getExampleTwo() 
    {
        return exampleTwo;
    }

    public void setExampleThree(String exampleThree) 
    {
        this.exampleThree = exampleThree;
    }

    public String getExampleThree() 
    {
        return exampleThree;
    }

    public void setClassProjectName(String classProjectName) {
        this.classProjectName = classProjectName;
    }

    public String getClassProjectName() {
        return classProjectName;
    }

    public String getIsOperational() {
        return isOperational;
    }

    public String getSubmitStatus() {
        return submitStatus;
    }

    public String getProjectSum() {
        return projectSum;
    }

    public void setIsOperational(String isOperational) {
        this.isOperational = isOperational;
    }

    public void setSubmitStatus(String submitStatus) {
        this.submitStatus = submitStatus;
    }

    public void setProjectSum(String projectSum) {
        this.projectSum = projectSum;
    }


    public List<Projects> getChildren()
    {
        return children;
    }

    public void setChildren(List<Projects> children)
    {
        this.children = children;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("projectId", getProjectId())
            .append("pId", getpId())
            .append("projectName", getProjectName())
            .append("projectNum", getProjectNum())
            .append("ancestors", getAncestors())
            .append("projectText", getProjectText())
            .append("sort", getSort())
            .append("projectStatus", getProjectStatus())
            .append("classProjectName",getClassProjectName())
            .append("isOperational",getIsOperational())
            .append("submitStatus",getSubmitStatus())
            .append("projectSum",getProjectSum())
            .append("delFlag", getDelFlag())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("exampleOne", getExampleOne())
            .append("exampleTwo", getExampleTwo())
            .append("exampleThree", getExampleThree())
            .append("remark", getRemark())
            .toString();
    }
}
